package com.ruoyi.system.mapper;

import java.util.List;
import com.ruoyi.system.domain.ATeamInfo;
import com.ruoyi.system.domain.vo.ATeamInfoVO;
import com.ruoyi.system.domain.vo.XcxATeamInfoVO;
import org.apache.ibatis.annotations.Param;

/**
 * 团队成员Mapper接口
 * 
 * @author ruoyi
 * @date 2024-05-16
 */
public interface ATeamInfoMapper 
{
    /**
     * 查询团队成员
     * 
     * @param id 团队成员主键
     * @return 团队成员
     */
    public ATeamInfo selectATeamInfoById(Long id);

    /**
     * 查询团队成员列表
     * 
     * @param aTeamInfo 团队成员
     * @return 团队成员集合
     */
    public List<ATeamInfo> selectATeamInfoList(ATeamInfo aTeamInfo);

    /**
     * 新增团队成员
     * 
     * @param aTeamInfo 团队成员
     * @return 结果
     */
    public int insertATeamInfo(ATeamInfo aTeamInfo);

    /**
     * 修改团队成员
     * 
     * @param aTeamInfo 团队成员
     * @return 结果
     */
    public int updateATeamInfo(ATeamInfo aTeamInfo);

    /**
     * 删除团队成员
     * 
     * @param id 团队成员主键
     * @return 结果
     */
    public int deleteATeamInfoById(Long id);

    /**
     * 批量删除团队成员
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteATeamInfoByIds(Long[] ids);

    List<ATeamInfoVO> selectATeamInfoLists(ATeamInfoVO aTeamInfovo);

    void handleupteAgent(Long teamId);

    List<XcxATeamInfoVO> selectATeamInfoXcxList(ATeamInfo aTeamInfo);

    ATeamInfo selectATeamInfoByUser(ATeamInfo info);

    int updateUserIdToUserId(@Param("teamId") Long id,@Param("userId") Long userId,@Param("newUserId") Long newUserId);
}
